﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Mogre;

namespace WastedMechanics.CharState
{
    public class CharStateIdlePistolAim : CharStateIdle
    {
        public CharStateIdlePistolAim(Character chr)
            : base(chr, "IdlePistolAim")
        {
        }

        public override void Enter()
        {
            base.Enter();            
            Character.IsAiming = true;
        }

        public override void Exit()
        {            
            Character.IsAiming = false;
            base.Exit();
        }

        public override void StopAimingOrder()
        {
            Character.IsAiming = false;
            Character.SwitchState(new CharStateIdlePistol(Character));
        }

        public override void RecoilOrder()
        {
            Character.SwitchState(new CharStateIdlePistolRecoil(Character));
        }

        public override CharState GetWalkState()
        {
            return new CharStateWalkPistol(Character);
        }
        public override CharState GetRunState()
        {
            return new CharStateRunPistolAim(Character);
        }
        public override CharState GetFallState()
        {
            return new CharStateFallPistol(Character);
        }
        public override CharState GetJumpStandState()
        {
            return new CharStateJumpStandPistol(Character);
        }
    }
}
